import type { CodeCellIds } from '@/app/helpers/codeCellLanguage';
import { GenericLanguageIcon } from '@/shared/components/Icons';

// Language icons originally designed at 20x20 — Figma file:
// https://www.figma.com/file/HdhrQ6vUZH4quMl7WFX6Vd/Custom-Icons?node-id=0%3A1&t=t5GeoagkcP0W7hK2-1
//
// Contents must be manually copy/pasted from exported .svg files.
// Probably could make this better in the future by using something like:
// https://github.com/gregberge/svgr

export function LanguageIcon({
  language,
  className,
}: {
  language: CodeCellIds | string | null | undefined;
  className?: string;
}) {
  language = language ? language.toLowerCase() : language;

  return language && 'python'.startsWith(language) ? (
    <Python className={className} />
  ) : language && 'formula'.startsWith(language) ? (
    <Formula className={className} />
  ) : language && 'javascript'.startsWith(language) ? (
    <JavaScript className={className} />
  ) : language && 'postgres'.startsWith(language) ? (
    <Postgres className={className} />
  ) : language && 'mysql'.startsWith(language) ? (
    <MySql className={className} />
  ) : language && 'mssql'.startsWith(language) ? (
    <MsSql className={className} />
  ) : language && 'snowflake'.startsWith(language) ? (
    <Snowflake className={className} />
  ) : language && 'cockroachdb'.startsWith(language) ? (
    <Cockroachdb className={className} />
  ) : language && 'bigquery'.startsWith(language) ? (
    <Bigquery className={className} />
  ) : language && 'mariadb'.startsWith(language) ? (
    <Mariadb className={className} />
  ) : language && 'supabase'.startsWith(language) ? (
    <Supabase className={className} />
  ) : language && 'neon'.startsWith(language) ? (
    <Neon className={className} />
  ) : language && 'mixpanel'.startsWith(language) ? (
    <Mixpanel className={className} />
  ) : (
    <GenericLanguageIcon className={className} />
  );
}

function Python({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <path
        d="M9.61318 1.02909C8.88909 1.03242 8.19761 1.09358 7.58918 1.2002C5.79681 1.5138 5.47138 2.1702 5.47138 3.3807V4.9794H9.70697V5.5123H5.47138H3.88181C2.65083 5.5123 1.57294 6.24506 1.2358 7.63902C0.846902 9.23682 0.829652 10.2339 1.2358 11.9022C1.53688 13.1441 2.2559 14.0289 3.48688 14.0289H4.94317V12.1125C4.94317 10.7279 6.15277 9.50662 7.58918 9.50662H11.8198C12.9975 9.50662 13.9376 8.54631 13.9376 7.37501V3.3807C13.9376 2.24389 12.9693 1.38993 11.8198 1.2002C11.0922 1.08025 10.3373 1.02576 9.61318 1.02909ZM7.3226 2.3149C7.76011 2.3149 8.11739 2.67451 8.11739 3.11669C8.11739 3.5573 7.76011 3.9136 7.3226 3.9136C6.88353 3.9136 6.52781 3.5573 6.52781 3.11669C6.52781 2.67451 6.88353 2.3149 7.3226 2.3149Z"
        fill="#306998"
      />
      <path
        d="M14.9138 6.02894V7.87748C14.9138 9.31062 13.6801 10.5169 12.2732 10.5169H8.05111C6.89462 10.5169 5.93762 11.4916 5.93762 12.6322V16.5962C5.93762 17.7243 6.93375 18.3879 8.05111 18.7115C9.38914 19.099 10.6722 19.169 12.2732 18.7115C13.3373 18.4081 14.3867 17.7975 14.3867 16.5962V15.0096H10.1646V14.4808H14.3867H16.5002C17.7286 14.4808 18.1864 13.6369 18.6136 12.3702C19.055 11.0663 19.0362 9.81226 18.6136 8.13948C18.31 6.93508 17.7302 6.02894 16.5002 6.02894H14.9138ZM12.5392 16.0673C12.9774 16.0673 13.3324 16.4209 13.3324 16.8582C13.3324 17.297 12.9774 17.6539 12.5392 17.6539C12.1026 17.6539 11.746 17.297 11.746 16.8582C11.746 16.4209 12.1026 16.0673 12.5392 16.0673Z"
        fill="#306998"
      />
    </svg>
  );
}

function Formula({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <g clipPath="url(#clip0_904_25)">
        <path
          d="M4.98862 5.96124L4.37614 6.64754L4.43633 6.90714H6.01343C5.69139 8.7542 5.45061 10.4192 4.98862 12.9854C4.43633 16.2588 4.1188 17.063 3.9307 17.3569C3.76516 17.6478 3.52739 17.7985 3.20535 17.7985C2.85171 17.7985 2.21214 17.521 1.86903 17.2062C1.74563 17.1227 1.59966 17.1436 1.44466 17.245C1.13465 17.5046 0.83368 17.9045 0.83368 18.2625C0.815622 18.7459 1.46723 19.1667 2.08874 19.1667C2.63651 19.1667 3.44312 18.8265 4.29186 18.0268C5.45211 16.9362 6.32042 15.4397 7.04577 12.2051C7.51228 10.1402 7.73199 8.79747 8.06005 6.90864L10.0194 6.73258L10.4438 5.96124H8.23762C8.80797 2.40438 9.25341 1.87771 9.80118 1.87771C10.1654 1.87771 10.5897 2.15522 11.0773 2.70128C11.2218 2.89822 11.4385 2.87733 11.604 2.74305C11.8824 2.57894 12.2255 2.1582 12.2481 1.77626C12.2646 1.35552 11.759 0.833332 10.8892 0.833332C10.1006 0.833332 8.89224 1.35552 7.87645 2.382C6.98557 3.31746 6.51907 4.48568 6.19702 5.96124H4.98862ZM11.2579 8.34242C11.8659 7.53974 12.23 7.27268 12.4181 7.27268C12.6123 7.27268 12.7673 7.46216 13.0998 8.52743L13.6687 10.3461C12.5686 12.0142 11.7635 12.9437 11.2744 12.9437C11.1119 12.9437 10.9479 12.8929 10.832 12.7795C10.7176 12.6662 10.5912 12.5722 10.4678 12.5722C10.0645 12.5722 9.56491 13.057 9.55589 13.6583C9.54686 14.2715 9.98026 14.7102 10.5491 14.7102C11.5258 14.7102 12.3519 13.7598 13.9471 11.2398L14.4136 12.7989C14.8139 14.1387 15.2834 14.7102 15.8703 14.7102C16.5957 14.7102 17.5708 14.097 18.6347 12.4394L18.1893 11.9351C17.5497 12.699 17.1254 13.057 16.8741 13.057C16.5941 13.057 16.3489 12.6333 16.0253 11.5919L15.3436 9.39426C15.7469 8.80493 16.1442 8.3096 16.4933 7.91422C16.9087 7.44425 17.2292 7.24433 17.4474 7.24433C17.631 7.24433 17.7905 7.32191 17.8898 7.43083C18.0208 7.57406 18.099 7.64119 18.254 7.64119C18.6046 7.64119 19.1464 7.19957 19.166 6.61472C19.184 6.07164 18.8439 5.60913 18.254 5.60913C17.3631 5.60913 16.5776 6.37004 15.0652 8.59904L14.7537 7.64269C14.3173 6.29991 14.0283 5.60913 13.4204 5.60913C12.7131 5.60913 11.741 6.47149 10.7899 7.83813L11.2579 8.34242Z"
          fill="#8c1a6a"
        />
      </g>
      <defs>
        <clipPath id="clip0_904_25">
          <rect width="20" height="20" fill="white" />
        </clipPath>
      </defs>
    </svg>
  );
}

function JavaScript({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <path d="M19 1V19H1V1H19Z" fill="#F0DB4E" />
      <path
        d="M13.4372 14.2984C13.8039 14.931 14.2811 15.3959 15.1251 15.3959C15.8341 15.3959 16.287 15.0216 16.287 14.5045C16.287 13.8847 15.8216 13.6652 15.0413 13.3046L14.6135 13.1108C13.3788 12.5551 12.5585 11.859 12.5585 10.3875C12.5585 9.03192 13.5363 8 15.0644 8C16.1523 8 16.9344 8.39995 17.498 9.44713L16.1656 10.3508C15.8722 9.79518 15.5557 9.57627 15.0644 9.57627C14.5632 9.57627 14.2456 9.91211 14.2456 10.3508C14.2456 10.893 14.5635 11.1126 15.2976 11.4484L15.7254 11.6419C17.1792 12.3005 18 12.9718 18 14.4813C18 16.1085 16.7899 17 15.1647 17C13.5756 17 12.549 16.2001 12.0467 15.1517L13.4372 14.2984ZM7.39281 14.455C7.6616 14.9588 7.90612 15.3846 8.49399 15.3846C9.05614 15.3846 9.41078 15.1523 9.41078 14.2489V8.10319H11.1218V14.2733C11.1218 16.1448 10.083 16.9966 8.56682 16.9966C7.19685 16.9966 6.40348 16.2477 6 15.3457L7.39281 14.455Z"
        fill="#323230"
      />
    </svg>
  );
}

function Postgres({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <g clipPath="url(#clip0_904_34)">
        <path
          d="M14.0043 0.833332C13.2701 0.838631 12.5401 0.942225 11.8351 1.14118L11.7855 1.15646C11.3408 1.08021 10.8906 1.03807 10.439 1.03042C9.51149 1.01514 8.71465 1.23361 8.07214 1.59723C7.43908 1.3841 6.12572 1.01667 4.74149 1.09C3.77773 1.14118 2.72578 1.42535 1.94626 2.22362C1.16911 3.02189 0.758095 4.25711 0.844707 5.93768C0.868329 6.40137 1.00455 7.15763 1.23053 8.13694C1.45651 9.11625 1.77383 10.2629 2.16988 11.3086C2.56594 12.3552 2.99979 13.2948 3.67773 13.9334C4.01631 14.2535 4.48244 14.5223 5.03204 14.5002C5.41786 14.4849 5.76667 14.3207 6.06745 14.0785C6.21391 14.2657 6.3706 14.3474 6.51311 14.423C6.69264 14.5185 6.86744 14.5835 7.04854 14.6262C7.37373 14.7049 7.93041 14.8103 8.58237 14.7026C8.80441 14.6667 9.03827 14.5964 9.27133 14.4964C9.28 14.7485 9.29023 14.9952 9.30047 15.245C9.33275 16.0364 9.35322 16.7674 9.5981 17.4083C9.63747 17.513 9.74534 18.0523 10.1705 18.5282C10.5957 19.0049 11.4288 19.302 12.3776 19.105C13.0469 18.9659 13.898 18.7154 14.4634 17.9347C15.0224 17.1631 15.2744 16.0562 15.324 14.2611C15.3366 14.1641 15.3515 14.0816 15.3673 14.0044L15.5004 14.0159H15.5161C16.2303 14.0472 17.0051 13.9487 17.6523 13.6569C18.2255 13.3994 18.6594 13.1389 18.9751 12.6768C19.0538 12.5622 19.1405 12.4239 19.1641 12.1856C19.1877 11.9473 19.0468 11.5745 18.8129 11.4026C18.3444 11.0573 18.0499 11.1887 17.7342 11.2521C17.4231 11.3188 17.1062 11.3562 16.7877 11.3636C17.698 9.87633 18.3507 8.29659 18.7231 6.89867C18.9436 6.07366 19.0672 5.31282 19.0775 4.64746C19.0877 3.98211 19.0318 3.39315 18.6208 2.88363C17.3366 1.29167 15.5311 0.851666 14.1342 0.836388C14.0909 0.835624 14.0476 0.83486 14.0043 0.835624V0.833332ZM13.9673 1.32223C15.2886 1.31 16.9767 1.6698 18.1885 3.17238C18.4609 3.51002 18.542 4.0035 18.5326 4.61156C18.5224 5.21886 18.4066 5.94609 18.1948 6.74283C17.7838 8.2859 17.0074 10.0849 15.9137 11.699C15.9524 11.7256 15.9941 11.7477 16.0381 11.7647C16.2665 11.8563 16.787 11.935 17.8255 11.728C18.0869 11.6745 18.2783 11.6386 18.4767 11.7853C18.5249 11.825 18.563 11.8749 18.588 11.9312C18.613 11.9876 18.6242 12.0487 18.6208 12.11C18.6102 12.2027 18.5749 12.2911 18.5184 12.3666C18.3176 12.6592 17.9216 12.9365 17.4137 13.1649C16.9641 13.3681 16.3192 13.4743 15.7476 13.4804C15.461 13.4834 15.1964 13.4621 14.972 13.3941L14.9579 13.3887C14.8712 14.1985 14.672 15.7973 14.5421 16.5268C14.4382 17.115 14.2563 17.5825 13.9091 17.9324C13.5626 18.2822 13.0721 18.4931 12.4122 18.6306C11.5949 18.8009 10.9989 18.6176 10.6146 18.3036C10.2312 17.9904 10.0556 17.5749 9.95006 17.3205C9.87762 17.1448 9.83983 16.9172 9.80361 16.6131C9.76739 16.3091 9.74062 15.9371 9.72251 15.5177C9.69839 14.8755 9.69051 14.2329 9.69889 13.5904C9.35747 13.8938 8.93322 14.0953 8.47686 14.171C7.93435 14.2603 7.45011 14.1725 7.16113 14.1022C7.01868 14.0675 6.88117 14.0159 6.75169 13.9487C6.61784 13.8791 6.49028 13.8005 6.40524 13.6454C6.35527 13.5566 6.33937 13.4535 6.36036 13.3543C6.38697 13.2539 6.44738 13.1649 6.53201 13.1015C6.68791 12.9785 6.89421 12.9098 7.20523 12.8471C7.77136 12.7341 7.96899 12.6569 8.08947 12.5645C8.19183 12.485 8.30757 12.3246 8.51229 12.0893C8.51131 12.0789 8.51053 12.0685 8.50993 12.058C8.14355 12.048 7.78476 11.9543 7.4627 11.7845C7.3446 11.9052 6.74146 12.524 6.00604 13.3826C5.69659 13.7416 5.35487 13.9479 4.99424 13.9624C4.63362 13.9777 4.30764 13.8012 4.03048 13.5407C3.47695 13.019 3.03522 12.1214 2.65019 11.107C2.26594 10.0925 1.95335 8.96271 1.73131 8.0002C1.50848 7.03769 1.37698 6.26158 1.35808 5.88727C1.27541 4.29684 1.65887 3.22509 2.31634 2.54904C2.97459 1.87299 3.87694 1.61709 4.75645 1.5682C6.33516 1.48035 7.83435 2.01432 8.1375 2.1289C8.72174 1.7439 9.47448 1.50403 10.4146 1.51931C10.8609 1.52538 11.3051 1.58126 11.7382 1.68584L11.754 1.67896C11.9446 1.61395 12.1389 1.55937 12.3358 1.51549C12.8706 1.39446 13.4174 1.33017 13.9665 1.32375L13.9673 1.32223ZM14.087 1.83404H13.972C13.5209 1.84014 13.0715 1.88926 12.6303 1.9807C13.6114 2.40237 14.3524 3.05169 14.8744 3.69947C15.237 4.14799 15.5367 4.64118 15.7657 5.16615C15.8523 5.36782 15.9106 5.53817 15.9437 5.67032C15.9602 5.73678 15.9712 5.79254 15.9752 5.8506C15.9767 5.87963 15.9783 5.90942 15.9657 5.9606C15.9657 5.96289 15.9618 5.96824 15.961 5.97053C15.9846 6.6397 15.8137 7.09346 15.7933 7.73208C15.7775 8.195 15.8996 8.73889 15.9295 9.33244C15.9578 9.89008 15.8885 10.5027 15.5153 11.1039C15.5468 11.1406 15.5752 11.1772 15.6051 11.2139C16.5925 9.70522 17.3043 8.03611 17.6838 6.61297C17.8869 5.84678 17.9948 5.1524 18.0043 4.60239C18.0121 4.05239 17.9066 3.65364 17.772 3.48711C16.7153 2.17626 15.2854 1.8432 14.087 1.83404ZM10.3154 2.02959C9.38472 2.03188 8.71701 2.3046 8.21072 2.71328C7.68868 3.13571 7.3383 3.71398 7.10838 4.306C6.83516 5.00879 6.74146 5.68865 6.70445 6.15005L6.71469 6.14394C6.99578 5.99116 7.36507 5.83838 7.76034 5.74977C8.15561 5.66192 8.58158 5.63442 8.9674 5.77956C9.35322 5.9247 9.67212 6.26616 9.78786 6.78408C10.3422 9.27209 9.61542 10.1972 9.34771 10.8954C9.24615 11.1484 9.15914 11.4068 9.08709 11.6692C9.12094 11.6616 9.1548 11.6524 9.18866 11.6493C9.37763 11.6341 9.52566 11.6952 9.61385 11.7318C9.88314 11.8403 10.0682 12.0679 10.1682 12.3277C10.1942 12.3957 10.2131 12.469 10.2241 12.5446C10.2357 12.5757 10.2411 12.6086 10.2398 12.6416C10.21 13.5933 10.2134 14.5456 10.2501 15.4971C10.2682 15.9081 10.2949 16.2701 10.3288 16.5558C10.3627 16.8408 10.4107 17.0577 10.4414 17.131C10.5422 17.3755 10.6894 17.6956 10.9556 17.9133C11.2217 18.1302 11.6036 18.2754 12.3012 18.1302C12.9059 18.0042 13.2791 17.8293 13.5287 17.5779C13.7776 17.3266 13.9264 16.9767 14.0216 16.4413C14.1642 15.6392 14.4508 13.3131 14.4854 12.8754C14.4697 12.5454 14.5201 12.2918 14.6287 12.0985C14.7405 11.8999 14.9138 11.7784 15.0634 11.7127C15.1382 11.6799 15.2082 11.6577 15.2657 11.6417C15.2049 11.5569 15.1411 11.4741 15.0744 11.3934C14.8587 11.1396 14.6821 10.8569 14.55 10.5539C14.4867 10.4288 14.4192 10.3057 14.3476 10.1849C14.2429 10.0016 14.1106 9.77244 13.972 9.51501C13.6949 8.99938 13.3933 8.37451 13.2366 7.76569C13.0807 7.15763 13.0579 6.52818 13.4579 6.08435C13.8122 5.69018 14.4342 5.52671 15.3681 5.61838C15.3405 5.53817 15.324 5.47171 15.2775 5.36476C15.0664 4.88266 14.7908 4.4296 14.4579 4.01725C13.6665 3.03564 12.3855 2.06244 10.406 2.03112H10.3154V2.02959ZM5.08558 2.06932C4.98558 2.06932 4.88558 2.07237 4.78637 2.07772C3.99111 2.12202 3.23915 2.34585 2.70137 2.89891C2.16279 3.45197 1.80847 4.35871 1.88563 5.85977C1.90059 6.14394 2.02815 6.93992 2.24705 7.88562C2.46515 8.83132 2.7746 9.94432 3.14624 10.9275C3.51868 11.9106 3.96985 12.7661 4.39819 13.171C4.61393 13.3734 4.80133 13.4552 4.97141 13.4483C5.14227 13.4407 5.34778 13.3452 5.59896 13.0526C6.0569 12.5167 6.5322 11.9949 7.02413 11.4882C6.67509 11.1941 6.40796 10.8196 6.24737 10.3991C6.08678 9.97854 6.03791 9.52556 6.10525 9.08188C6.18635 8.51736 6.19737 7.98951 6.18792 7.57242C6.17847 7.16603 6.14855 6.89561 6.14855 6.72679C6.14841 6.72195 6.14841 6.71711 6.14855 6.71227V6.70846L6.14777 6.70387C6.1473 5.82447 6.30504 4.95097 6.6139 4.1242C6.83437 3.55586 7.16271 2.97835 7.65483 2.51085C7.17137 2.35654 6.31312 2.12126 5.384 2.07695C5.28434 2.07199 5.18537 2.06944 5.08558 2.06932ZM14.8476 6.10421C14.313 6.11109 14.013 6.24477 13.8555 6.4197C13.6327 6.66797 13.6114 7.10339 13.75 7.63964C13.8878 8.17666 14.1728 8.77709 14.4405 9.27591C14.5744 9.5257 14.7043 9.75029 14.809 9.93286C14.9145 10.1162 14.9917 10.2461 15.039 10.3568C15.0823 10.4592 15.1303 10.5493 15.1791 10.6334C15.3862 10.2094 15.4232 9.79307 15.4019 9.35917C15.3744 8.82216 15.246 8.27291 15.2649 7.7168C15.2862 7.06672 15.4185 6.64352 15.4303 6.14088C15.2371 6.1166 15.0424 6.10435 14.8476 6.10421ZM8.36426 6.19206C8.20094 6.19354 8.03827 6.2125 7.87923 6.24859C7.56226 6.3233 7.25695 6.43865 6.97137 6.59158C6.87478 6.64185 6.78283 6.70012 6.69658 6.76575L6.67925 6.78103C6.68398 6.89255 6.70681 7.16297 6.71626 7.56096C6.72571 7.99638 6.71469 8.55174 6.62807 9.15292C6.43989 10.4592 7.41704 11.5409 8.56505 11.5424C8.63198 11.2743 8.74221 11.0023 8.85244 10.7159C9.17212 9.88015 9.80125 9.27056 9.27133 6.89179C9.18472 6.5022 9.01307 6.34484 8.77686 6.25623C8.64446 6.2108 8.50466 6.18906 8.36426 6.19206ZM14.598 6.3479H14.6374C14.6894 6.34942 14.7374 6.35477 14.7791 6.3647C14.8216 6.37387 14.8579 6.38762 14.8878 6.40672C14.9031 6.41594 14.9163 6.42818 14.9265 6.44266C14.9367 6.45713 14.9436 6.47351 14.9468 6.49074L14.946 6.49686C14.9476 6.53312 14.938 6.56901 14.9185 6.59998C14.8953 6.64191 14.8661 6.68048 14.8319 6.71457C14.752 6.7999 14.645 6.8569 14.5279 6.87651C14.414 6.88987 14.299 6.86184 14.2051 6.79783C14.1667 6.77275 14.1322 6.74238 14.1027 6.70769C14.0773 6.68044 14.0601 6.64685 14.0531 6.61068C14.0515 6.59305 14.0536 6.57529 14.0593 6.55847C14.065 6.54166 14.0741 6.52615 14.0862 6.5129C14.1121 6.48442 14.1433 6.46107 14.1783 6.44415C14.2539 6.4029 14.3563 6.37234 14.472 6.35554C14.5153 6.34942 14.5579 6.34637 14.598 6.3456V6.3479ZM8.44064 6.47623C8.48237 6.47623 8.52647 6.48005 8.57135 6.48616C8.69182 6.5022 8.7989 6.53352 8.88079 6.57936C8.92073 6.59958 8.95628 6.62707 8.98551 6.66033C9.00143 6.67797 9.01342 6.69861 9.02074 6.72096C9.02805 6.7433 9.03054 6.76687 9.02803 6.79019C9.02046 6.83411 8.99995 6.87497 8.96898 6.90783C8.93676 6.9462 8.89881 6.97967 8.85638 7.00714C8.75398 7.07752 8.62819 7.1083 8.50363 7.09346C8.37634 7.07316 8.25982 7.01179 8.17293 6.91929C8.13596 6.88204 8.10467 6.83985 8.08002 6.79401C8.05406 6.75368 8.0427 6.7061 8.04773 6.6588C8.05954 6.5763 8.12962 6.53352 8.19812 6.50984C8.27615 6.48565 8.35804 6.4753 8.43985 6.47929L8.44064 6.47623ZM15.5744 12.0855L15.572 12.0863C15.4563 12.1268 15.361 12.1436 15.2807 12.1779C15.1995 12.2083 15.1325 12.2664 15.0925 12.3414C15.0429 12.4293 15.0004 12.5851 15.013 12.8502C15.0486 12.874 15.0879 12.892 15.1295 12.9037C15.2641 12.9434 15.4901 12.9693 15.7421 12.9655C16.2444 12.9602 16.8625 12.8464 17.1909 12.6982C17.4602 12.5768 17.7103 12.4186 17.9334 12.2284C16.8366 12.4484 16.2161 12.3895 15.8358 12.2375C15.7414 12.1994 15.6533 12.1487 15.5744 12.0855ZM9.25086 12.1573H9.23433C9.1926 12.1611 9.13197 12.1749 9.01465 12.3009C8.74064 12.5989 8.64457 12.786 8.41859 12.9609C8.19261 13.1351 7.89892 13.2283 7.31231 13.3452C7.12649 13.3818 7.02019 13.4223 6.94933 13.4552C6.97216 13.4735 6.9698 13.4781 7.00444 13.4957C7.09027 13.5415 7.2005 13.582 7.28948 13.6041C7.54144 13.6653 7.95561 13.7363 8.38789 13.6653C8.82016 13.5934 9.26976 13.3925 9.65322 12.8708C9.71936 12.7807 9.72645 12.6477 9.67212 12.5049C9.617 12.362 9.49653 12.2391 9.41149 12.2047C9.36089 12.181 9.30663 12.1655 9.25086 12.1589V12.1573Z"
          fill="#336791"
        />
      </g>
      <defs>
        <clipPath id="clip0_904_34">
          <rect width="20" height="20" fill="white" />
        </clipPath>
      </defs>
    </svg>
  );
}

function MySql({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <g clipPath="url(#clip0_904_46)">
        <path
          d="M25.7909 20.8827C24.2675 20.8454 23.0868 20.995 22.0965 21.4065C21.8108 21.5187 21.3537 21.5188 21.3156 21.8743C21.468 22.0239 21.487 22.2672 21.6203 22.4729C21.8491 22.8469 22.2487 23.3521 22.6106 23.6141C23.0105 23.9134 23.4105 24.2126 23.8293 24.4746C24.5721 24.9236 25.4101 25.1854 26.1337 25.6344C26.5529 25.8961 26.9715 26.2331 27.3905 26.5137C27.6 26.6631 27.7333 26.9066 28 27V26.944C27.8666 26.7755 27.8285 26.5324 27.6953 26.3453C27.505 26.1582 27.3144 25.9898 27.1239 25.8027C26.5717 25.0733 25.8861 24.4371 25.1435 23.9134C24.5341 23.5018 23.2009 22.9406 22.9534 22.2484C22.9534 22.2484 22.9343 22.2298 22.9153 22.211C23.3342 22.1736 23.8293 22.0239 24.2294 21.9117C24.8768 21.7432 25.4671 21.7807 26.1337 21.6123C26.4384 21.5375 26.7431 21.444 27.0477 21.3504V21.1821C26.7051 20.8454 26.4575 20.3964 26.0956 20.0784C25.1244 19.2551 24.0579 18.4508 22.9534 17.7773C22.363 17.4032 21.6012 17.1599 20.9728 16.842C20.7445 16.7296 20.3634 16.6736 20.2302 16.4865C19.8873 16.075 19.6968 15.5325 19.4494 15.0461C18.8972 14.0171 18.3639 12.876 17.8877 11.7911C17.5451 11.0614 17.3356 10.3318 16.9166 9.65844C14.9551 6.47817 12.8222 4.55132 9.54679 2.66178C8.84209 2.26899 8.00419 2.1006 7.10915 1.89491C6.63323 1.87609 6.15698 1.83878 5.68095 1.81996C5.37621 1.689 5.07148 1.33363 4.80484 1.16524C3.71957 0.491704 0.919955 -0.967305 0.120145 0.959546C-0.394089 2.17544 0.881973 3.37263 1.31981 3.99014C1.6438 4.42035 2.06259 4.90669 2.29114 5.39313C2.42446 5.71098 2.46244 6.04796 2.59576 6.38462C2.9006 7.20751 3.18607 8.12438 3.58614 8.89147C3.79564 9.28426 4.02408 9.69575 4.29072 10.0512C4.44308 10.2569 4.70961 10.3506 4.76686 10.6872C4.50033 11.0614 4.48117 11.6227 4.3287 12.0903C3.64316 14.2043 3.90991 16.8233 4.88103 18.3759C5.18565 18.8435 5.90938 19.8727 6.88061 19.4797C7.73766 19.143 7.54721 18.0767 7.79458 17.1413C7.85194 16.9166 7.81385 16.7671 7.92801 16.6175V16.655C8.19465 17.1786 8.46118 17.6839 8.70877 18.2077C9.29919 19.1242 10.3274 20.0784 11.1844 20.7145C11.6416 21.0511 12.0034 21.6311 12.5747 21.8369V21.7806H12.5365C12.4223 21.6122 12.2508 21.5375 12.0986 21.4064C11.7559 21.0699 11.3748 20.6583 11.1083 20.2841C10.3086 19.2364 9.60381 18.0766 8.97542 16.8793C8.67079 16.2995 8.40404 15.6634 8.15656 15.0835C8.04217 14.8588 8.04218 14.5222 7.85183 14.4101C7.56614 14.8216 7.14725 15.1771 6.93774 15.6821C6.57609 16.4865 6.53789 17.478 6.40457 18.5068C6.32839 18.5257 6.36637 18.5068 6.32828 18.5444C5.71904 18.3945 5.50953 17.7773 5.28088 17.2535C4.7095 15.9253 4.61428 13.7927 5.10957 12.2587C5.24289 11.8658 5.81427 10.6312 5.58572 10.257C5.47144 9.90156 5.09042 9.69575 4.88103 9.41522C4.63354 9.05974 4.36679 8.61093 4.19549 8.21793C3.73839 7.17031 3.50984 6.01043 3.01476 4.96282C2.78622 4.47637 2.38647 3.97143 2.06259 3.52241C1.70083 3.01736 1.30087 2.66178 1.01518 2.06318C0.920065 1.85749 0.786635 1.52072 0.939001 1.29621C0.977092 1.14653 1.05317 1.09051 1.20564 1.05309C1.45324 0.847183 2.15793 1.10911 2.4053 1.22137C3.10999 1.5018 3.7003 1.76394 4.29072 2.15673C4.55725 2.34383 4.84293 2.6993 5.18565 2.79285H5.58561C6.19507 2.92371 6.8805 2.83027 7.45187 2.99855C8.46129 3.3165 9.37526 3.78423 10.1942 4.28939C12.689 5.84205 14.7455 8.04954 16.1358 10.6872C16.3644 11.1173 16.4595 11.5105 16.669 11.9593C17.0691 12.876 17.5642 13.8114 17.9639 14.7093C18.3639 15.5885 18.7447 16.4865 19.316 17.2162C19.6017 17.6089 20.7442 17.8148 21.2585 18.0206C21.6394 18.1888 22.2298 18.3386 22.5725 18.5443C23.22 18.937 23.8674 19.3862 24.4769 19.8163C24.7816 20.0409 25.7337 20.5086 25.7909 20.8827Z"
          fill="#00758F"
        />
        <path
          d="M4.59371 3.33333C4.41666 3.33333 4.2917 3.35079 4.16669 3.37678V3.39415H4.18752C4.27093 3.53303 4.41666 3.62852 4.52078 3.75C4.60419 3.88884 4.67706 4.02778 4.76046 4.16667C4.77082 4.15793 4.78124 4.1493 4.78124 4.1493C4.92715 4.06245 5.00002 3.92361 5.00002 3.71528C4.93751 3.65456 4.92709 3.5938 4.875 3.53303C4.81255 3.44618 4.67706 3.40283 4.59371 3.33333Z"
          fill="#00758F"
        />
      </g>
      <defs>
        <clipPath id="clip0_904_46">
          <rect width="20" height="20" fill="white" />
        </clipPath>
      </defs>
    </svg>
  );
}

function Snowflake({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M18.4364 8.76887L16.3061 10L18.4364 11.2208C18.5638 11.2946 18.6754 11.3929 18.7649 11.51C18.8545 11.6272 18.9201 11.7608 18.9581 11.9034C18.9961 12.046 19.0058 12.1946 18.9865 12.341C18.9672 12.4873 18.9194 12.6283 18.8458 12.7561C18.7721 12.8839 18.6741 12.9958 18.5573 13.0856C18.4406 13.1754 18.3073 13.2412 18.1652 13.2794C18.023 13.3175 17.8748 13.3272 17.7289 13.3078C17.583 13.2885 17.4424 13.2405 17.315 13.1667L13.498 10.9613C13.3231 10.8598 13.1787 10.7128 13.0802 10.5358C12.9816 10.3589 12.9325 10.1585 12.938 9.95589C12.941 9.86811 12.9544 9.781 12.9781 9.69643C13.0562 9.41283 13.2419 9.17116 13.4954 9.02314L17.3124 6.82553C17.4403 6.75137 17.5816 6.70324 17.7281 6.6839C17.8747 6.66457 18.0235 6.6744 18.1663 6.71284C18.309 6.75128 18.4427 6.81757 18.5599 6.90791C18.6771 6.99826 18.7753 7.11089 18.849 7.23936C18.923 7.36671 18.9711 7.50754 18.9904 7.65368C19.0097 7.79981 18.9999 7.94833 18.9615 8.09063C18.9231 8.23292 18.8569 8.36615 18.7668 8.48258C18.6766 8.59901 18.5643 8.69632 18.4364 8.76887ZM16.4199 14.7364L12.6043 12.5349C12.4336 12.4366 12.2402 12.3849 12.0433 12.3848C11.8465 12.3847 11.6531 12.4363 11.4823 12.5344C11.3115 12.6325 11.1693 12.7738 11.0698 12.9441C10.9702 13.1144 10.9169 13.3079 10.915 13.5053V17.9031C10.9249 18.1953 11.0476 18.4722 11.2572 18.6754C11.4668 18.8786 11.7469 18.9922 12.0384 18.9922C12.3299 18.9922 12.61 18.8786 12.8196 18.6754C13.0292 18.4722 13.1518 18.1953 13.1617 17.9031V15.4383L15.2972 16.6694C15.4246 16.7433 15.5653 16.7914 15.7112 16.8108C15.8571 16.8302 16.0054 16.8206 16.1476 16.7825C16.2898 16.7445 16.4231 16.6787 16.54 16.5889C16.6568 16.4992 16.7549 16.3872 16.8286 16.2594C16.9024 16.1317 16.9503 15.9906 16.9696 15.8442C16.989 15.6979 16.9794 15.5492 16.9414 15.4065C16.9035 15.2639 16.8379 15.1302 16.7484 15.013C16.6589 14.8958 16.5473 14.7974 16.4199 14.7234V14.7364ZM12.0222 10.4346L10.4313 12.0108C10.3769 12.0616 10.3063 12.0914 10.2321 12.0951H9.76516C9.69111 12.0907 9.62081 12.0609 9.56597 12.0108L7.98409 10.4294C7.93461 10.3752 7.90535 10.3056 7.90131 10.2322V9.76519C7.90558 9.69151 7.93478 9.62149 7.98409 9.5667L9.56597 7.98531C9.62093 7.93558 9.69124 7.90627 9.76516 7.90228H10.2321C10.3061 7.90574 10.3766 7.93512 10.4313 7.98531L12.017 9.5667C12.066 9.62162 12.0947 9.69165 12.0985 9.76519V10.2322C12.0949 10.3054 12.0661 10.3751 12.017 10.4294L12.0222 10.4346ZM10.7546 9.99611C10.7485 9.92048 10.7171 9.84915 10.6654 9.79373L10.2062 9.33838C10.1512 9.28874 10.0809 9.25945 10.007 9.25535H9.99022C9.91666 9.25922 9.84672 9.28856 9.79232 9.33838L9.33315 9.79373C9.28386 9.84944 9.2551 9.92041 9.25166 9.99481V10.0117C9.25492 10.085 9.28376 10.1548 9.33315 10.2089L9.79491 10.6629C9.84942 10.7125 9.91929 10.7419 9.9928 10.7459H10.0096C10.0835 10.7418 10.1538 10.7126 10.2088 10.6629L10.668 10.205C10.7176 10.1508 10.7472 10.0812 10.7521 10.0078L10.7546 9.99611ZM3.57734 5.26359L7.39428 7.4586C7.56518 7.55683 7.75873 7.6085 7.95571 7.6085C8.15268 7.6085 8.34623 7.55682 8.51713 7.45859C8.68803 7.36036 8.83033 7.219 8.92992 7.04855C9.0295 6.8781 9.0829 6.68448 9.08481 6.48693V2.093C9.07492 1.8008 8.95224 1.52388 8.74265 1.32068C8.53306 1.11748 8.25296 1.00389 7.96146 1.00389C7.66995 1.00389 7.38985 1.11748 7.18026 1.32068C6.97067 1.52388 6.84799 1.8008 6.8381 2.093V4.55786L4.70004 3.32543C4.57265 3.25149 4.43199 3.20345 4.28608 3.18403C4.14017 3.16462 3.99188 3.17422 3.84968 3.21229C3.70747 3.25035 3.57413 3.31614 3.45727 3.40589C3.34042 3.49564 3.24233 3.6076 3.16861 3.73537C3.09489 3.86315 3.04699 4.00423 3.02763 4.15057C3.00828 4.29691 3.01785 4.44564 3.0558 4.58827C3.09376 4.7309 3.15935 4.86464 3.24883 4.98185C3.33832 5.09905 3.44994 5.19743 3.57734 5.27137V5.26359ZM11.9537 7.60909C12.1791 7.62697 12.4046 7.57585 12.6004 7.4625L16.416 5.2571C16.5434 5.18316 16.655 5.08478 16.7445 4.96758C16.834 4.85037 16.8996 4.71663 16.9376 4.574C16.9755 4.43137 16.9851 4.28264 16.9657 4.1363C16.9464 3.98996 16.8985 3.84888 16.8248 3.7211C16.751 3.59333 16.653 3.48137 16.5361 3.39162C16.4192 3.30187 16.2859 3.23608 16.1437 3.19802C15.8565 3.12114 15.5506 3.16184 15.2933 3.31116L13.1579 4.55397V2.08911C13.148 1.79691 13.0253 1.51999 12.8157 1.31679C12.6061 1.11359 12.326 1 12.0345 1C11.743 1 11.4629 1.11359 11.2533 1.31679C11.0437 1.51999 10.921 1.79691 10.9111 2.08911V6.48693C10.9108 6.77166 11.0182 7.0459 11.2118 7.25421C11.4053 7.46252 11.6705 7.58936 11.9537 7.60909ZM8.04618 12.3883C7.82075 12.3699 7.5951 12.4211 7.39946 12.5349L3.57734 14.7312C3.32006 14.8805 3.13245 15.1263 3.0558 15.4143C2.97915 15.7024 3.01973 16.0092 3.16861 16.2672C3.31749 16.5253 3.56248 16.7134 3.84968 16.7903C4.13688 16.8672 4.44276 16.8265 4.70004 16.6772L6.8381 15.446V17.9109C6.84799 18.2031 6.97067 18.48 7.18026 18.6832C7.38985 18.8864 7.66995 19 7.96146 19C8.25296 19 8.53306 18.8864 8.74265 18.6832C8.95224 18.48 9.07492 18.2031 9.08481 17.9109V13.5053C9.08423 13.222 8.97684 12.9494 8.78419 12.7422C8.59155 12.535 8.3279 12.4086 8.04618 12.3883ZM7.01142 10.3295C7.0851 10.0865 7.074 9.82555 6.97995 9.58971C6.88589 9.35387 6.7145 9.15723 6.49405 9.03222L2.68098 6.82812C2.42346 6.68018 2.11806 6.64039 1.83141 6.71743C1.54475 6.79448 1.3001 6.9821 1.15084 7.23936C1.07695 7.36668 1.02896 7.50743 1.00964 7.65347C0.990333 7.79952 1.00008 7.94795 1.03834 8.09019C1.07659 8.23242 1.14258 8.36564 1.23249 8.48214C1.3224 8.59863 1.43445 8.69609 1.56216 8.76887L3.69245 10L1.56216 11.2208C1.43476 11.2944 1.32309 11.3926 1.23351 11.5095C1.14392 11.6265 1.07819 11.76 1.04005 11.9025C1.00192 12.0449 0.992134 12.1935 1.01125 12.3398C1.03037 12.486 1.07803 12.627 1.15149 12.7548C1.22495 12.8826 1.32279 12.9946 1.43941 13.0844C1.55603 13.1743 1.68916 13.2402 1.83118 13.2785C1.97321 13.3167 2.12136 13.3265 2.26717 13.3073C2.41298 13.2882 2.55359 13.2404 2.68098 13.1667L6.49405 10.9613C6.73959 10.8238 6.92402 10.598 7.01013 10.3295H7.01142Z"
        fill="#29B5E8"
      />
    </svg>
  );
}

function MsSql({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <path
        d="M9.76285 4.14286C8.94657 2.9187 8.77012 1.28265 8.73163 0.610332C6.6582 1.05871 4.59827 1.86299 4.71724 2.45532C4.73223 2.5298 4.82621 2.61928 4.98217 2.70625L4.73823 3.14263C4.44031 2.97568 4.27286 2.78323 4.22737 2.5533C4.09291 1.88298 4.8522 1.27665 6.54773 0.699308C7.70542 0.304916 8.87309 0.0694808 8.92258 0.0599834L9.221 0V0.305416C9.221 0.32641 9.23399 2.44883 10.1787 3.86594L9.76285 4.14286Z"
        fill="#CFD8DC"
      />
      <path
        d="M10.5961 20H10.4707C6.37581 20 1.81856 18.7138 1.28021 16.5614C0.9518 15.2468 2.026 13.7942 4.38636 12.3621L4.64628 12.789C2.52237 14.0781 1.49915 15.3743 1.76558 16.4405C2.23295 18.309 6.55176 19.4736 10.3397 19.4996C10.7901 18.8263 13.2099 14.8709 11.8288 9.56586L12.3122 9.4399C13.8862 15.4842 10.7036 19.8555 10.6716 19.899L10.5961 20Z"
        fill="#CFD8DC"
      />
      <path
        d="M3.18833 18.1535C2.91891 18.1535 2.78544 18.124 2.76345 18.1185C2.67547 18.097 2.60649 18.0295 2.5825 17.9425C2.55801 17.8556 2.583 17.7621 2.64698 17.6986C2.68297 17.6626 6.24449 14.0956 6.72536 11.2114L7.21822 11.2934C6.80484 13.7747 4.36151 16.6034 3.39128 17.6451C4.36051 17.5896 6.80784 17.1358 11.506 14.506C7.83955 14.1041 7.25971 11.1689 7.25371 11.1374L7.74508 11.0469C7.76857 11.1699 8.35791 14.0516 12.3658 14.0516C12.3673 14.0516 12.3683 14.0516 12.3698 14.0516C12.4833 14.0516 12.5817 14.1276 12.6107 14.2366C12.6407 14.3455 12.5927 14.461 12.4953 14.518C6.87932 17.7716 4.15607 18.153 3.18833 18.1535Z"
        fill="#CFD8DC"
      />
      <path
        d="M5.48465 19.3502C5.38118 19.3502 5.28721 19.2862 5.25072 19.1877C5.21123 19.0822 5.24722 18.9628 5.33919 18.8968C5.35619 18.8843 6.24544 18.228 7.19168 16.7834C6.82778 16.6224 6.45938 16.4345 6.09398 16.215C5.65011 15.9486 5.3147 15.6627 5.06427 15.3698C3.77962 15.7087 2.59395 15.8426 1.55273 15.7541L1.59472 15.2563C2.53246 15.3358 3.59867 15.2248 4.75435 14.9364C3.96807 13.5927 4.68987 12.2591 4.69987 12.2411L5.13675 12.4845C5.10326 12.5455 4.50442 13.6692 5.26121 14.8004C6.36141 14.4845 7.53509 14.0171 8.74975 13.4098C9.02918 12.4925 9.24762 11.4493 9.36209 10.2727C9.37008 10.1922 9.41607 10.1207 9.48605 10.0802C9.55603 10.0397 9.64151 10.0362 9.71499 10.0697C9.73098 10.0772 11.3465 10.815 12.5162 11.2964C12.6012 11.3314 12.6602 11.4103 12.6697 11.5018C12.6797 11.5933 12.6382 11.6823 12.5617 11.7343C11.4175 12.514 10.2808 13.1904 9.17364 13.7547C8.82273 14.8669 8.38835 15.7926 7.94448 16.5494C9.79497 17.2407 11.401 17.2512 11.4215 17.2512C11.5355 17.2512 11.635 17.3282 11.6635 17.4387C11.6919 17.5492 11.6425 17.6646 11.543 17.7201C9.27361 18.9808 5.6611 19.3357 5.50865 19.3502C5.50065 19.3497 5.49265 19.3502 5.48465 19.3502ZM7.67655 16.9843C7.15669 17.7911 6.64583 18.3704 6.26394 18.7488C7.26266 18.6019 9.01368 18.28 10.4668 17.6796C9.77097 17.5941 8.76375 17.4042 7.67655 16.9843ZM5.60612 15.2168C5.80257 15.4127 6.0475 15.6042 6.35091 15.7866C6.71881 16.0076 7.09221 16.195 7.46061 16.354C7.8375 15.7222 8.2109 14.9639 8.53131 14.0706C7.52109 14.5515 6.54036 14.9354 5.60612 15.2168ZM9.82246 10.667C9.71999 11.5508 9.56203 12.3571 9.36608 13.0914C10.1959 12.649 11.0426 12.1436 11.8964 11.5788C11.1221 11.2509 10.2708 10.8695 9.82246 10.667Z"
        fill="#CFD8DC"
      />
      <path
        d="M7.18326 3.80443C7.12477 3.80443 7.06679 3.78344 7.0208 3.74445C6.21602 3.05564 5.26879 1.65403 5.2288 1.59454C5.16431 1.49907 5.17431 1.3716 5.25179 1.28663C5.32877 1.20115 5.45573 1.18116 5.55571 1.23564C5.5612 1.23714 6.02458 1.42809 9.16321 1.95094C9.25369 1.96594 9.32817 2.02892 9.35816 2.1149C9.38865 2.20088 9.36916 2.29685 9.30817 2.36483C8.42942 3.34106 7.31922 3.77094 7.27223 3.78844C7.24324 3.79894 7.21275 3.80443 7.18326 3.80443ZM6.04507 1.87796C6.36048 2.30235 6.81486 2.87569 7.23074 3.26208C7.48617 3.14562 8.05902 2.8532 8.60237 2.36333C7.31122 2.14289 6.52344 1.98593 6.04507 1.87796Z"
        fill="#CFD8DC"
      />
      <path
        d="M9.14222 10.7025C9.10823 10.7025 9.07374 10.6955 9.04175 10.6815C8.94227 10.6375 8.88229 10.5346 8.89379 10.4266C9.03975 9.05248 6.93133 8.50113 6.90983 8.49614C6.82286 8.47414 6.75388 8.40666 6.73038 8.32018C6.70689 8.23371 6.73138 8.14073 6.79486 8.07725C6.89834 7.97378 9.36366 5.52895 12.4568 4.18632C12.5433 4.14883 12.6413 4.16283 12.7142 4.22131C12.7867 4.2803 12.8202 4.37477 12.8012 4.46574C12.2084 7.33695 9.44713 10.4861 9.33017 10.6186C9.28068 10.673 9.2117 10.7025 9.14222 10.7025ZM7.44868 8.14573C8.04052 8.36817 9.07724 8.88303 9.33966 9.82327C10.064 8.91952 11.61 6.83759 12.1874 4.85764C9.99448 5.91235 8.14799 7.50291 7.44868 8.14573Z"
        fill="#B71C1C"
      />
      <path
        d="M4.76136 12.682L4.52393 12.2421C5.46517 11.7348 6.54337 10.801 7.42663 9.71581C6.67483 10.2307 6.24445 10.5831 6.23096 10.5946L5.91154 10.2097C5.93104 10.1937 6.7933 9.48637 8.22641 8.60012C8.6198 7.96729 8.92222 7.31647 9.07767 6.69264C9.10417 6.58667 9.12716 6.4842 9.14565 6.38523C8.18342 6.04182 7.29566 5.83838 6.68583 5.7509C6.59336 5.7379 6.51638 5.67442 6.48539 5.58695C6.45439 5.49947 6.47489 5.4015 6.53737 5.33352C6.57986 5.28753 7.59508 4.19983 8.86373 3.60249C8.9622 3.55601 9.08017 3.579 9.15415 3.65948C9.18764 3.69597 9.87395 4.46675 9.6995 6.06132C10.2768 6.28625 10.8717 6.55968 11.4445 6.88509C12.8236 6.26526 14.3897 5.70741 16.0578 5.37051C16.1437 5.35351 16.2392 5.3845 16.2982 5.45448C16.3567 5.52446 16.3727 5.62094 16.3397 5.70591C15.6899 7.37146 13.9473 9.15047 13.8734 9.22544C13.8229 9.27643 13.7539 9.30192 13.6819 9.29942C13.6104 9.29543 13.5444 9.26144 13.4995 9.20545C12.9396 8.50164 12.2078 7.9188 11.4185 7.44443C10.3313 7.9463 9.36859 8.48315 8.57731 8.96852C7.56759 10.5446 6.04351 11.9917 4.76136 12.682ZM11.9659 7.2015C12.6107 7.61739 13.211 8.10625 13.7074 8.6751C14.1213 8.22622 15.1145 7.09153 15.6779 5.96484C14.3532 6.26976 13.0996 6.71114 11.9659 7.2015ZM9.62002 6.56468C9.60353 6.64615 9.58453 6.72963 9.56354 6.81461C9.45857 7.23399 9.29161 7.66487 9.07767 8.09476C9.62552 7.78184 10.2319 7.45893 10.8862 7.14602C10.4673 6.92408 10.0399 6.73113 9.62002 6.56468ZM7.24518 5.34001C7.80052 5.44898 8.48484 5.62694 9.21513 5.88286C9.29111 4.96162 9.04218 4.39727 8.89172 4.14734C8.20391 4.50624 7.60158 5.0111 7.24518 5.34001Z"
        fill="#B71C1C"
      />
      <path
        d="M7.24639 7.75338C7.24639 9.94277 5.42189 11.6823 4.10725 12.9519C3.88731 13.1669 3.14252 13.2019 3.14252 13.2019C3.32747 13.0119 3.53741 12.812 3.76235 12.597C5.012 11.3874 6.74652 9.73283 6.74652 7.75338C6.74652 5.40902 5.80179 4.48428 5.05699 3.74448C4.72708 3.40957 4.44716 3.08966 4.2772 2.69977L4.43216 2.63478C4.60212 2.70976 4.79706 2.79474 4.94702 2.85972C5.06699 3.03467 5.22694 3.20463 5.41189 3.38958C6.17668 4.15437 7.24639 5.20408 7.24639 7.75338Z"
        fill="#B71C1C"
      />
      <path
        d="M19.6854 8.40018C19.6854 8.40018 19.383 8.44317 19.298 8.45316C14.9192 8.93803 10.4004 10.1977 7.81615 11.2324C6.8814 11.6073 5.91167 12.0622 5.02691 12.572C5.02192 12.577 5.01692 12.577 5.00692 12.582C4.48706 12.8819 3.22241 13.5018 2.19769 14.0466C3.69728 12.4521 6.50651 11.2224 7.6262 10.7725C10.1605 9.75781 14.5143 8.53314 18.7981 8.00829C18.2933 7.41845 17.0586 6.16879 14.6293 5.23905C13.2097 4.6892 11.0503 4.37929 9.14578 4.10436C6.11661 3.66948 4.39209 3.37956 4.22713 2.55479C4.19214 2.38983 4.21714 2.22488 4.29212 2.06492C4.45707 2.33485 4.69201 2.5248 4.84696 2.63477C4.92194 2.68475 4.97693 2.71474 4.99692 2.72474L5.00192 2.72974C5.71173 3.10464 7.6262 3.37956 9.22076 3.6095C11.1502 3.88942 13.3346 4.20433 14.8092 4.76918C18.2433 6.09381 19.428 7.98829 19.4779 8.06827C19.5229 8.14325 19.6854 8.40018 19.6854 8.40018Z"
        fill="#B71C1C"
      />
    </svg>
  );
}

function Cockroachdb({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M12.2076 5.73127C11.4848 5.89839 10.7451 5.98228 10.003 5.98127C9.24555 5.98127 8.50567 5.89627 7.79534 5.73127C8.38708 4.79799 9.13353 3.97108 10.003 3.28565C10.871 3.97195 11.6159 4.79873 12.2076 5.73127ZM18.8771 0.358769C17.9663 0.118871 17.0278 -0.00173164 16.0855 1.87827e-05C13.9199 -0.0029358 11.8021 0.633311 10.0005 1.82814C8.19926 0.632588 6.08128 -0.00372608 3.91554 1.87827e-05C2.95062 1.87827e-05 2.01273 0.122519 1.12325 0.358769C0.751727 0.454219 0.385921 0.570446 0.0275773 0.706894C0.0221137 0.70908 0.017147 0.712334 0.0129715 0.716463C0.00879604 0.720592 0.00549678 0.725513 0.00326919 0.730934C0.00104161 0.736354 -6.89723e-05 0.742164 3.31511e-06 0.748019C7.56025e-05 0.753874 0.0013293 0.759655 0.00369004 0.765019C0.159586 1.10127 0.333083 1.42689 0.519781 1.74189C0.529838 1.75939 0.551211 1.76689 0.57007 1.76002C1.64176 1.37212 2.77379 1.17494 3.91429 1.17752C5.77184 1.17752 7.50932 1.69377 8.99347 2.58377C8.04977 3.37799 7.24733 4.32456 6.61983 5.38377C6.28997 5.93412 6.01118 6.51317 5.78692 7.11377C5.33113 8.33157 5.09823 9.62064 5.09922 10.92C5.09922 14.0125 6.40045 16.8088 8.48555 18.7988C8.64774 18.9575 8.8162 19.1069 8.99347 19.2532C9.13177 19.3719 9.27006 19.4832 9.41464 19.5907C9.59631 19.7344 9.78552 19.8663 9.97599 19.9925C9.98312 19.9974 9.99155 20 10.0002 20C10.0088 20 10.0173 19.9974 10.0244 19.9925C10.2142 19.8632 10.4016 19.7313 10.5832 19.5907C10.7303 19.4832 10.8686 19.3719 11.0069 19.2532C11.181 19.1069 11.3558 18.9544 11.518 18.7988C13.5999 16.8088 14.9018 14.0094 14.9018 10.9207C14.903 9.37401 14.5721 7.84494 13.9312 6.43565C13.8658 6.28996 13.7974 6.14556 13.7263 6.00252C13.617 5.79306 13.5017 5.58672 13.3806 5.38377C12.7521 4.32523 11.9498 3.3788 11.0069 2.58377C12.5389 1.66273 14.2952 1.17639 16.0855 1.17752C17.226 1.17494 18.358 1.37212 19.4297 1.76002C19.4492 1.76627 19.4706 1.75877 19.4806 1.74127C19.6678 1.4243 19.8398 1.09873 19.9961 0.765644C19.9985 0.760247 19.9999 0.75441 20 0.748485C20.0001 0.742561 19.999 0.736673 19.9968 0.731179C19.9946 0.725685 19.9912 0.7207 19.987 0.716525C19.9828 0.712351 19.9777 0.709074 19.9722 0.706894C19.6139 0.573144 19.2493 0.453144 18.8771 0.358769Z"
        fill="#151F34"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M13.6364 10.3189C13.6364 13.0086 12.7492 15.4556 11.3019 17.2727C11.0416 16.2868 10.9091 15.2597 10.9091 14.2265C10.9091 11.5369 11.7963 9.08535 13.2436 7.27273C13.4981 8.23499 13.6364 9.25842 13.6364 10.3189Z"
        fill="#348540"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M9.09091 14.2265C9.09091 15.2851 8.95375 16.3085 8.69809 17.2727C7.19728 15.3952 6.36164 12.906 6.36365 10.3189C6.36365 9.25842 6.50355 8.23499 6.75976 7.27273C8.26023 9.15023 9.09482 11.6398 9.09091 14.2265Z"
        fill="#7DBC42"
      />
    </svg>
  );
}

function Bigquery({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <path
        d="M5.34197 18.3298L0.974119 10.6702C0.736736 10.2394 0.736736 9.76064 0.974119 9.32978L5.34197 1.67021C5.57936 1.23936 6.00665 1 6.48142 1H15.2646C15.7394 1 16.1667 1.23936 16.404 1.67021L20.7719 9.32978C21.0093 9.76064 21.0093 10.2394 20.7719 10.6702L16.3566 18.3298C16.1192 18.7606 15.6919 19 15.2171 19H6.48142C6.00665 18.9521 5.57936 18.7128 5.34197 18.3298Z"
        fill="#4386FA"
      />
      <path
        opacity="0.1"
        d="M13.6028 7.51064C13.6028 7.51064 14.8372 10.4787 13.1755 12.1543C11.5138 13.8298 8.47528 12.7766 8.47528 12.7766L14.6473 19H15.2644C15.7392 19 16.1665 18.7606 16.4039 18.3298L19.3 13.2553L13.6028 7.51064Z"
        fill="black"
      />
      <path
        d="M15.0746 13.5426L13.7452 12.2021L13.6978 12.1543C14.9322 10.5266 14.6473 8.22873 13.0331 6.98405C11.5613 5.83512 9.51982 5.97874 8.19047 7.31916C6.81364 8.70746 6.76617 10.9096 8.04804 12.3936C9.32991 13.8298 11.5138 14.0692 13.0331 12.8245C13.0331 12.8245 13.0331 12.8723 13.0806 12.8723L14.4099 14.2128C14.4574 14.2606 14.5049 14.2606 14.5523 14.2606C14.5998 14.2606 14.6473 14.2606 14.6948 14.2128L15.0746 13.8298C15.1221 13.7819 15.1221 13.7341 15.1221 13.6862C15.1221 13.6383 15.0746 13.5904 15.0746 13.5426ZM10.7542 12.6809C9.66225 12.6809 8.61776 12.0106 8.19047 10.9575C7.76318 9.90427 8.00056 8.70746 8.80767 7.9415C9.89963 6.84044 11.6088 6.84044 12.7008 7.9415C13.223 8.4681 13.5079 9.18618 13.5079 9.90427C13.5079 11.4362 12.2735 12.6809 10.7542 12.6809ZM8.99757 9.76065V10.9096C9.18748 11.2447 9.42486 11.4841 9.7572 11.6755V9.76065H8.99757ZM10.3744 8.8032V11.9149C10.6118 11.9628 10.8492 11.9628 11.134 11.9149V8.8032H10.3744ZM12.5108 10.9096V10.2394H11.7512V11.6755C12.0836 11.4841 12.3209 11.1968 12.5108 10.9096Z"
        fill="white"
      />
    </svg>
  );
}

function Mariadb({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <g clipPath="url(#clip0_999_493)">
        <path
          d="M17.9613 0.00104456C17.0297 0.0306074 17.3246 0.297993 15.3113 0.79106C13.2784 1.28888 10.7952 1.13631 8.60612 2.05012C2.07115 4.77809 0.759815 14.1017 -5.18087 17.4416C-9.62167 19.9383 -14.1017 20.1373 -18.1299 21.3938C-20.777 22.2199 -23.6728 23.9145 -26.0711 25.9715C-27.9327 27.569 -27.9813 28.9735 -29.9264 30.9769C-32.007 33.1199 -38.1954 31.013 -41 34.2929C-40.0965 35.2023 -39.7006 35.457 -37.9199 35.221C-38.2885 35.9165 -40.4614 36.5025 -40.0361 37.5253C-39.5887 38.6023 -34.3354 39.3318 -29.5596 36.4618C-27.3358 35.1254 -25.5644 33.1991 -22.1005 32.7393C-17.6183 32.1446 -12.4546 33.1207 -7.26602 33.8653C-8.03506 36.1488 -9.58003 37.6673 -10.8174 39.486C-11.2006 39.8967 -10.0476 39.9426 -8.7325 39.6945C-6.36678 39.1122 -4.6619 38.6434 -2.87614 37.609C-0.682531 36.3381 -0.350254 33.0795 2.34111 32.3743C3.84074 34.6683 7.91902 35.2102 10.45 33.3752C8.22929 32.7496 7.61539 28.0449 8.36507 25.9715C9.07523 24.009 9.77665 20.8698 10.4919 18.2759C11.2596 15.4899 11.5428 11.9782 12.472 10.5592C13.8695 8.42409 15.4142 7.69083 16.7553 6.48693C18.0963 5.28304 19.3236 4.11108 19.2833 1.35592C19.2706 0.468772 18.8094 -0.0258788 17.9616 0.00104456H17.9613Z"
          fill="#002B64"
        />
        <path
          d="M16.1334 1.63806C16.3575 2.39798 16.7078 2.74667 18.2223 2.88604C18.0011 4.79733 16.72 5.84285 15.2841 6.84588C14.0202 7.72828 12.6354 8.57768 11.7457 9.95605C10.8342 11.3677 10.2553 16.1996 8.84217 20.9714C7.62046 25.0944 5.77556 29.1711 2.55382 30.9573C2.2173 30.1142 2.59678 28.558 1.92746 28.0464C1.49414 29.2759 1.00461 30.4492 0.43075 31.5396C-1.45949 35.1362 -4.25852 37.8291 -8.93587 38.6513C-6.71653 35.662 -4.59452 32.5751 -4.54864 27.423C-6.11058 27.7592 -6.07743 31.4316 -7.68207 32.4133C-8.71099 32.5247 -9.75317 32.5242 -10.8022 32.4613C-15.1102 32.2045 -19.5295 30.9156 -23.5595 32.2027C-26.3034 33.0792 -28.5477 35.1473 -30.8712 36.1504C-33.6021 37.3292 -35.6703 37.8141 -39.0707 37.3292C-39.503 36.7503 -36.582 36.0031 -36.7567 34.7461C-38.0877 34.5996 -38.8605 34.9206 -40.0175 34.3974C-39.8896 34.1633 -39.7019 33.968 -39.4656 33.8054C-37.3452 32.3447 -31.322 33.4604 -29.7102 31.8851C-28.7153 30.9135 -28.0624 29.8962 -27.3867 28.9077C-26.7311 27.9482 -26.0536 27.0154 -25.0212 26.175C-24.6401 25.8646 -24.2257 25.5579 -23.786 25.2585C-22.027 24.0602 -19.8509 22.9735 -17.7093 22.2244C-14.7922 21.2037 -11.8359 21.1195 -8.72637 19.937C-6.80537 19.2061 -4.71676 18.3036 -3.01374 17.0406C-2.61287 16.7446 -2.23195 16.4228 -1.87345 16.0772C2.98873 11.3595 3.95268 3.03755 11.5383 2.26205C12.4556 2.16834 13.2063 2.1987 13.89 2.17785C14.6776 2.15462 15.375 2.06355 16.1334 1.63806ZM6.88589 28.2729C6.97659 29.7151 7.81749 32.5764 8.56028 33.2719C7.106 33.6241 4.60052 33.0423 3.95798 32.0213C4.28814 30.5469 6.00654 29.1991 6.88589 28.2729Z"
          fill="#C49A6C"
        />
        <path
          d="M16.5029 3.2268C16.2173 3.82333 15.6705 4.59197 15.6705 6.10997C15.6681 6.37049 15.4716 6.54893 15.4684 6.14719C15.483 4.66376 15.8776 4.02236 16.2968 3.17955C16.4915 2.83403 16.6089 2.9763 16.5029 3.2268ZM16.2151 3.00244C15.8784 3.57126 15.0669 4.60886 14.933 6.12132C14.908 6.38052 14.6962 6.54101 14.7285 6.14033C14.8744 4.66403 15.523 3.73992 16.0152 2.93671C16.2385 2.6102 16.3432 2.7625 16.2151 3.00217V3.00244ZM15.9531 2.7047C15.5692 3.24316 14.3204 4.48955 14.0592 5.98565C14.0122 6.24142 13.7876 6.38422 13.8537 5.9875C14.1242 4.52809 15.2005 3.38121 15.7588 2.62287C16.0088 2.31563 16.1003 2.47611 15.9531 2.7047ZM15.719 2.37264L15.5928 2.5062C15.0345 3.10221 13.7373 4.55554 13.305 5.88561C13.2217 6.13267 12.9793 6.24274 13.1011 5.85895C13.5744 4.45207 14.8783 2.93697 15.5381 2.26389C15.8293 1.99466 15.8972 2.16676 15.719 2.37264ZM9.01642 5.38436C9.30574 4.14747 10.2723 3.58393 11.9409 3.72145C12.3434 5.56754 10.0902 6.31242 9.01642 5.38436Z"
          fill="#002B64"
        />
      </g>
      <defs>
        <clipPath id="clip0_999_493">
          <rect width="20" height="20" fill="white" />
        </clipPath>
      </defs>
    </svg>
  );
}

function Supabase({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <g clipPath="url(#clip0_999_501)">
        <path
          d="M11.6329 19.6626C11.1532 20.3159 10.1806 19.958 10.169 19.1238L10 6.92308H17.5857C18.9597 6.92308 19.726 8.63933 18.8717 9.80306L11.6329 19.6626Z"
          fill="url(#paint0_linear_999_501)"
        />
        <path
          d="M11.6329 19.6626C11.1532 20.3159 10.1806 19.958 10.169 19.1238L10 6.92308H17.5857C18.9597 6.92308 19.726 8.63933 18.8717 9.80306L11.6329 19.6626Z"
          fill="url(#paint1_linear_999_501)"
          fillOpacity="0.2"
        />
        <path
          d="M8.31659 0.317566C8.84165 -0.297366 9.90628 0.0395719 9.91893 0.824682L10 12.3077H1.80067C0.296679 12.3077 -0.542122 10.6924 0.393102 9.59712L8.31659 0.317566Z"
          fill="#3ECF8E"
        />
      </g>
      <defs>
        <linearGradient
          id="paint0_linear_999_501"
          x1="10"
          y1="9.62828"
          x2="16.8914"
          y2="12.3008"
          gradientUnits="userSpaceOnUse"
        >
          <stop stopColor="#249361" />
          <stop offset="1" stopColor="#3ECF8E" />
        </linearGradient>
        <linearGradient
          id="paint1_linear_999_501"
          x1="7.01097"
          y1="5.20236"
          x2="10.4777"
          y2="11.2366"
          gradientUnits="userSpaceOnUse"
        >
          <stop />
          <stop offset="1" stopOpacity="0" />
        </linearGradient>
        <clipPath id="clip0_999_501">
          <rect width="20" height="20" fill="white" />
        </clipPath>
      </defs>
    </svg>
  );
}

function Neon({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <g clipPath="url(#clip0_999_509)">
        <path
          fillRule="evenodd"
          clipRule="evenodd"
          d="M-0.000854492 3.40341C-0.000854492 1.52376 1.54305 0 3.44755 0H16.5515C18.456 0 19.9999 1.52376 19.9999 3.40341V14.4029C19.9999 16.3475 17.5066 17.1914 16.2973 15.6562L12.5169 10.8565V16.6767C12.5169 18.3684 11.1274 19.7398 9.41331 19.7398H3.44755C1.54305 19.7398 -0.000854492 18.216 -0.000854492 16.3364V3.40341ZM3.44755 2.72273C3.06665 2.72273 2.75787 3.02748 2.75787 3.40341V16.3364C2.75787 16.7123 3.06665 17.017 3.44755 17.017H9.51677C9.70721 17.017 9.75813 16.8647 9.75813 16.6767V8.87177C9.75813 6.92718 12.2514 6.08317 13.4607 7.61848L17.2412 12.4182V3.40341C17.2412 3.02748 17.2772 2.72273 16.8963 2.72273H3.44755Z"
          fill="#32C0ED"
        />
        <path
          fillRule="evenodd"
          clipRule="evenodd"
          d="M-0.000854492 3.40341C-0.000854492 1.52376 1.54305 0 3.44755 0H16.5515C18.456 0 19.9999 1.52376 19.9999 3.40341V14.4029C19.9999 16.3475 17.5066 17.1914 16.2973 15.6562L12.5169 10.8565V16.6767C12.5169 18.3684 11.1274 19.7398 9.41331 19.7398H3.44755C1.54305 19.7398 -0.000854492 18.216 -0.000854492 16.3364V3.40341ZM3.44755 2.72273C3.06665 2.72273 2.75787 3.02748 2.75787 3.40341V16.3364C2.75787 16.7123 3.06665 17.017 3.44755 17.017H9.51677C9.70721 17.017 9.75813 16.8647 9.75813 16.6767V8.87177C9.75813 6.92718 12.2514 6.08317 13.4607 7.61848L17.2412 12.4182V3.40341C17.2412 3.02748 17.2772 2.72273 16.8963 2.72273H3.44755Z"
          fill="url(#paint0_linear_999_509)"
        />
        <path
          fillRule="evenodd"
          clipRule="evenodd"
          d="M-0.000854492 3.40341C-0.000854492 1.52376 1.54305 0 3.44755 0H16.5515C18.456 0 19.9999 1.52376 19.9999 3.40341V14.4029C19.9999 16.3475 17.5066 17.1914 16.2973 15.6562L12.5169 10.8565V16.6767C12.5169 18.3684 11.1274 19.7398 9.41331 19.7398H3.44755C1.54305 19.7398 -0.000854492 18.216 -0.000854492 16.3364V3.40341ZM3.44755 2.72273C3.06665 2.72273 2.75787 3.02748 2.75787 3.40341V16.3364C2.75787 16.7123 3.06665 17.017 3.44755 17.017H9.51677C9.70721 17.017 9.75813 16.8647 9.75813 16.6767V8.87177C9.75813 6.92718 12.2514 6.08317 13.4607 7.61848L17.2412 12.4182V3.40341C17.2412 3.02748 17.2772 2.72273 16.8963 2.72273H3.44755Z"
          fill="url(#paint1_linear_999_509)"
          fillOpacity="0.35"
        />
        <path
          d="M16.5516 0C18.4562 0 20 1.52376 20 3.40341V14.4029C20 16.3475 17.5067 17.1914 16.2975 15.6562L12.517 10.8565V16.6767C12.517 18.3684 11.1275 19.7398 9.41345 19.7398C9.6039 19.7398 9.75827 19.5874 9.75827 19.3994V8.87177C9.75827 6.92718 12.2516 6.08317 13.4609 7.61848L17.2413 12.4182V0.680681C17.2413 0.304752 16.9326 0 16.5516 0Z"
          fill="#63F655"
        />
      </g>
      <defs>
        <linearGradient
          id="paint0_linear_999_509"
          x1="19.9999"
          y1="19.7398"
          x2="2.67313"
          y2="-0.22571"
          gradientUnits="userSpaceOnUse"
        >
          <stop stopColor="#2EF51C" />
          <stop offset="1" stopColor="#2EF51C" stopOpacity="0" />
        </linearGradient>
        <linearGradient
          id="paint1_linear_999_509"
          x1="19.9999"
          y1="19.7398"
          x2="8.16154"
          y2="15.0741"
          gradientUnits="userSpaceOnUse"
        >
          <stop stopOpacity="0.9" />
          <stop offset="1" stopColor="#1A1A1A" stopOpacity="0" />
        </linearGradient>
        <clipPath id="clip0_999_509">
          <rect width="20" height="20" fill="white" />
        </clipPath>
      </defs>
    </svg>
  );
}

function Mixpanel({ className }: { className?: string }) {
  return (
    <svg
      width="20"
      height="20"
      viewBox="0 0 20 20"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <path
        d="M6.17251 8.01394H8.4375C7.87035 7.65857 7.65857 7.16322 7.375 6.2443L6.52428 3.09269C6.13661 1.67483 5.81714 1.00359 4.25929 1.00359H1.00359V1.85431H1.46664C2.42145 1.85431 2.52914 2.20967 2.81271 3.27217L3.55574 6.03611C3.94341 7.37859 4.55004 8.01394 6.17251 8.01394ZM11.4168 8.01394H13.6818C15.3114 8.01394 15.875 7.375 16.2663 6.03252L17.0093 3.26858C17.2929 2.20608 17.4329 1.85072 18.3554 1.85072H18.8184V1H15.595C14.0013 1 13.6818 1.63894 13.3264 3.0891L12.4757 6.24071C12.1957 7.19552 11.9804 7.65857 11.4168 8.01394ZM8.44109 10.9861H11.4168V8.01035H8.44109V10.9861ZM1.00359 18H4.25929C5.81714 18 6.13661 17.3252 6.52428 15.9109L7.375 12.7593C7.65857 11.8404 7.87035 11.3414 8.4375 10.9897H6.17251C4.54286 10.9897 3.93982 11.6286 3.55215 12.9711L2.80912 15.735C2.52555 16.7975 2.42145 17.1529 1.46305 17.1529H1L1.00359 18ZM15.5914 18H18.8148V17.1493H18.3518C17.4329 17.1493 17.2893 16.7939 17.0057 15.7314L16.2627 12.9675C15.875 11.6214 15.3079 10.9861 13.6782 10.9861H11.4168C11.984 11.3414 12.1886 11.8009 12.4721 12.7557L13.3228 15.9073C13.6782 17.3611 13.9977 18 15.5914 18Z"
        fill="#7856FF"
      />
    </svg>
  );
}
